A specific storage system is functionally divided into a controlling head and a disk array, which are physically combined into one. Generally, the controlling head of a low-end storage system requires a low reliability, and includes only one control board, i.e. one controller. A mid-end or high-end storage system requires a high reliability, and requires at least “1+1” backup for the input power supply of the storage system, power module of the storage system, battery, and the channel between the switch and the disk array. Moreover, the mid-end system includes two controllers, and the controlling head of the high-end system includes more than two controllers, and the data thereof also needs to be backed up.
FIG. 1 shows the application scenario of a storage device. The data written by a server into a disk array needs to be processed by a controlling head. The data is temporarily stored in the memory of the controlling head, and is sent to the disk array after being processed. Such data needs to be backed up by the system, and such a process is called “writing a memory”.
A common solution is to: use an area in the memory of other controlling head as a mirroring area of the controlling head, and use the hardware mirroring channel between controlling heads to synchronize the written memory of the controlling head with the mirroring memory of other controlling heads, in order to ensure that the data is consistent between them anytime. A mirroring channel refers to a data transmission channel created by a physical connection. As its name implies, the mirroring channel implements “replication” of storage data between two controlling heads. As shown in FIG. 2, a mainboard A is the controlling head in FIG. 1, a mainboard B is a controlling head for backing up data. A mirroring channel is created between the mainboard A and the mainboard B through a physical connection. Under control of a CPU group, the data of the mainboard A is written into the memory group of the mainboard B through the mirroring channel. The mainboard A communicates with the mainboard B through a north bridge as a communication interface. Mirroring channels require a specific bandwidth for fulfilling the real time and data traffic requirements.
When a mirroring channel fails, the backup relation does not exist any longer. Therefore, an inter-board control channel is generally used as a backup channel of the mirroring channel. An inter-board control channel is designed to transfer the control information between mainboards. When the mirroring channel fails, the inter-board channel may work to implement the controller mirroring function.
In the research process of the present disclosure, the inventor finds out that the inter-board control channel is restricted by the function of its main transmission control information, and the maximum quantity of data traffic allowed is too small to fulfill the data backup function. Therefore, when an inter-board control channel replaces a mirroring channel, the bandwidth of data traffic is decreased massively, and the system performance is deteriorated.